🐶
在團隊合作中,保持程式的一致性和質量至關重要,這不僅依賴於每位開發者的自律。幸運的是,Husky 作為一個強大的 Git hook 第三方工具,能夠幫助你自動化這些檢查,使整個開發流程更加順暢。無論是格式化程式碼還是執行測試,Husky 都能在你提交程式碼之前自動運行相關腳本,確保程式碼無誤。
Husky 除了代表 Git hook 第三方工具和哈士奇,Husky 還有個有趣的歷史。1981 年,DVW Microelectronics Ltd(現為 Itronix)製造了一款名為 Husky 144 的手持軍規電腦。Husky 144 是專為軍隊等使用者設計,能夠在潮濕、寒冷等惡劣環境中使用。這台設備不僅防水,還具有極強的抗摔性,即便掉在堅硬的地面上(是 Nokia 3310?)。
首先,回憶一下我們之前提到的 Git。
今天,小銘、小華、小嘉、小芳和小橘在饅頭股份有限公司上班,大家都要將檔案上傳至公司的雲端系統。由於檔名沒有設定統一規則,大家便隨意命名,導致公司雲端的檔名雜亂無章。饅頭老闆對此十分憤怒,於是決定在公司系統裡加入一套自動檢查檔名的系統,叫做 Git hook。
但是 Git hook 有個小缺點,它是存在 .git 資料夾裡,而這個資料夾不能上傳至遠端倉庫,這就導致本地設定好的 Git hook 無法共享給其他同事。於是他們安裝了第三方工具 Husky。這套軟體不僅解決了上述問題,允許將設定上傳至雲端,還能自動檢查檔名是否符合規範,若不符合,便無法提交,直到符合規則為止。
抱歉各位,目前查無資料,還請高抬貴手
補充 Husky 與 Git hook 的關係:
Git hooks 是基礎
: Git hooks 是 Git 自帶的功能,在某些 Git 操作的觸發點執行腳本。
Husky 是管理工具
: Husky 簡化了使用 Git hooks 的過程,開發者無需手動處理 Git 的 hooks 文件。Husky 允許在 package.json 中定義 Git hooks,從而實現自動化的開發工作流程。
Husky 的最大優勢在於能夠隨時確保每次提交的程式碼質量。它可以在開發者提交程式碼之前,自動運行程式碼檢查工具,如 ESLint、Prettier,甚至是 Jest,確保程式碼風格一致,並避免潛在錯誤的引入。這樣不僅提升了團隊的協作效率,也減少了後續修復問題的時間。
Husky 能夠自動化繁瑣的流程,讓開發者無需手動執行程式碼檢查或測試。它還能與其他工具結合,如 lint-staged,只檢查變更過的文件,進一步提升效率。
Husky 的配置靈活且易於擴展,開發者可以根據項目需求自定義各種 Git hook,讓整個開發流程更加自動化和可靠。
如何用Husky 為Git 新增Commit Hooks 以實現程式碼任務的自動化
Husky--Git hooks鉤子工具功能介紹和使用_husky的作用-CSDN博客
Husky (computer) - Wikipedia